#ifndef TABLE_SYMBOLES_H
#define TABLE_SYMBOLES_H

#include <stdio.h>

typedef struct cell {
    int index;
    char *name;
    int type;
    int pointeur;
    int entier;
    char *chaine;
    float reel;
    struct cell *next;
} s_cell;

typedef struct table {
    s_cell *f_cell;
    s_cell *l_cell;
    int size;
    char *addr;
} s_table;

s_table *create_table(void);
void delete_table(s_table *a_table);
s_cell *add_cell(s_table *a_table, char *name, int type);
s_cell *find_cell(s_table *a_table, char *name);
void write_table(s_table *a_table, FILE *out);

void write_string(s_table *a_table, FILE *out);
void write_pointeur(s_table *a_table, FILE *out);
void write_int(s_table *a_table, FILE *out);
void write_float(s_table *a_table, FILE *out);

#endif
